<template>
  <a-card :bordered="false">

    <!-- 查询区域 -->
    <div class="table-page-search-wrapper">
      <a-form layout="inline" @keyup.enter.native="searchQuery">
        <a-row :gutter="24">

          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="订单编号">
              <a-input placeholder="请输入订单编号" v-model="queryParam.orderNo" allowClear></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="下单人">
              <a-input placeholder="请输入下单人" v-model="queryParam.nickName" allowClear></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="商品名称">
              <a-input placeholder="请输入商品名称" v-model="queryParam.productName" allowClear></a-input>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <a-form-item label="订单状态">
              <a-select v-model="queryParam.orderStatus" allowClear
                        placeholder="请选择订单状态">
                <a-select-option value="1">待发货</a-select-option>
                <a-select-option value="2">待收货</a-select-option>
                <a-select-option value="3">已完成</a-select-option>
              </a-select>
            </a-form-item>
          </a-col>
          <a-col :xl="6" :lg="7" :md="8" :sm="24">
            <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
              <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
            </span>
          </a-col>

        </a-row>
      </a-form>
    </div>

    <!-- 操作按钮区域 -->
    <!--<div class="table-operator">-->
    <!--<a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>-->
    <!--<a-button type="primary" icon="download" @click="handleExportXls('积分商品订单')">导出</a-button>-->
    <!--<a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl"-->
    <!--@change="handleImportExcel">-->
    <!--<a-button type="primary" icon="import">导入</a-button>-->
    <!--</a-upload>-->
    <!--<a-dropdown v-if="selectedRowKeys.length > 0">-->
    <!--<a-menu slot="overlay">-->
    <!--<a-menu-item key="1" @click="batchDel">-->
    <!--<a-icon type="delete"/>-->
    <!--删除-->
    <!--</a-menu-item>-->
    <!--</a-menu>-->
    <!--<a-button style="margin-left: 8px"> 批量操作-->
    <!--<a-icon type="down"/>-->
    <!--</a-button>-->
    <!--</a-dropdown>-->
    <!--</div>-->

    <!-- table区域-begin -->
    <div>
      <!--<div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">-->
      <!--<i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{-->
      <!--selectedRowKeys.length }}</a>项-->
      <!--<a style="margin-left: 24px" @click="onClearSelected">清空</a>-->
      <!--</div>-->

      <a-table
        ref="table"
        size="middle"
        bordered
        rowKey="id"
        :columns="columns"
        :dataSource="dataSource"
        :pagination="ipagination"
        :loading="loading"
        class="j-table-force-nowrap"
        @change="handleTableChange">

        <span slot="action" slot-scope="text, record">
          <a @click="handleEdit(record)" v-show="record.orderStatus == 1">确认发货</a>
          <a @click="updateOrderStatus(record,3)" v-show="record.orderStatus == 2">确认完成</a>
          <!--<a-divider type="vertical"/>-->
          <!--<a-dropdown>-->
          <!--<a class="ant-dropdown-link">更多 <a-icon type="down"/></a>-->
          <!--<a-menu slot="overlay">-->
          <!--<a-menu-item>-->
          <!--<a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">-->
          <!--<a>删除</a>-->
          <!--</a-popconfirm>-->
          <!--</a-menu-item>-->
          <!--</a-menu>-->
          <!--</a-dropdown>-->
        </span>

      </a-table>
    </div>
    <!-- table区域-end -->

    <!-- 表单区域 -->
    <pmsIntegralProductOrder-modal ref="modalForm" @ok="modalFormOk"></pmsIntegralProductOrder-modal>
  </a-card>
</template>

<script>
  import '@/assets/less/TableExpand.less'
  import {postAction} from '@/api/manage'
  import PmsIntegralProductOrderModal from './modules/PmsIntegralProductOrderModal'
  import {JeecgListMixin} from '@/mixins/JeecgListMixin'

  export default {
    name: "PmsIntegralProductOrderList",
    mixins: [JeecgListMixin],
    components: {
      PmsIntegralProductOrderModal
    },
    data() {
      return {
        description: '积分商品订单管理页面',
        // 表头
        columns: [
          {
            title: '#',
            dataIndex: '',
            key: 'rowIndex',
            width: 60,
            align: "center",
            customRender: function (t, r, index) {
              return parseInt(index) + 1;
            }
          },
          {
            title: '下单人',
            align: "center",
            dataIndex: 'userName'
          },
          {
            title: '订单编号',
            align: "center",
            dataIndex: 'orderNo'
          },
          {
            title: '订单状态',
            align: "center",
            dataIndex: 'orderStatus',
            customRender: function (t, r, index) {
              if (t == 0) {
                return "待付款"
              }
              if (t == 1) {
                return "待发货"
              }
              if (t == 2) {
                return "待收货"
              }
              if (t == 3) {
                return "已完成"
              }
              if (t == 4) {
                return "取消订单"
              }
            }
          },
          {
            title: '订单金额',
            align: "center",
            dataIndex: 'orderAmount'
          },
          {
            title: '商品名称',
            align: "center",
            dataIndex: 'productName'
          },
          {
            title: '商品数量',
            align: "center",
            dataIndex: 'productNum'
          },
          {
            title: '收货人性名',
            align: "center",
            dataIndex: 'receiverName'
          },
          {
            title: '收货人手机号码',
            align: "center",
            dataIndex: 'receiverPhone'
          },
          {
            title: '省名名称',
            align: "center",
            dataIndex: 'receiverProvinceName'
          },
          {
            title: '市名称',
            align: "center",
            dataIndex: 'receiverCityName'
          },
          {
            title: '区名称',
            align: "center",
            dataIndex: 'receiverAreaName'
          },
          {
            title: '收货人详细地址',
            align: "center",
            dataIndex: 'receiverAddress'
          },
          {
            title: '操作',
            dataIndex: 'action',
            align: "center",
            scopedSlots: {customRender: 'action'},
          }
        ],
        url: {
          list: "/order/pmsIntegralProductOrder/list",
          delete: "/order/pmsIntegralProductOrder/delete",
          deleteBatch: "/order/pmsIntegralProductOrder/deleteBatch",
          exportXlsUrl: "order/pmsIntegralProductOrder/exportXls",
          importExcelUrl: "order/pmsIntegralProductOrder/importExcel",
          updateOrderStatus: "order/pmsIntegralProductOrder/updateOrderStatus",
        },
      }
    },
    computed: {
      importExcelUrl: function () {
        return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
      }
    },
    methods: {
      updateOrderStatus(record, orderStatus) {
        let param = {
          id: record.id,
          orderStatus: orderStatus,
        };
        postAction(this.url.updateOrderStatus, param).then((res) => {
          if (res.success) {
            this.$message.success(res.message);
          } else {
            this.$message.warning(res.message);
          }
        }).finally(() => {
          this.modalFormOk();
        })
      }
    }
  }
</script>
<style scoped>
  @import '~@assets/less/common.less';
</style>